var ds;
var grid;
var insertForm;
var updateForm;
var form;
var win;
Ext.onReady(function() {
			initData();

		});

function initData() {
	ds = new Ext.data.Store({
				proxy : new Ext.data.HttpProxy({
							url : '../dispatchIndex.do?action=warehouse&type=yuanzhu'
						}),

				reader : new Ext.data.JsonReader({
							totalProperty : 'totalProperty',
							root : 'root'
						}, [{
									name : 'whid'
								}, {
									name : 'prdtType'
								}, {
									name : 'ssign'
								}, {
									name : 'spec'
								}, {
									name : 'plate'
								}, {
									name : 'zhenpian'
								}])
			});
	initGrid();
}

var simRecord = Ext.data.Record.create([{
			name : 'ssign'
		}, {
			name : 'spec'
		}, {
			name : 'plate'
		}, {
			name : 'sim'
		}]);
var SSIGN, SPEC, PLATE;
function getUpdateForm() {
	if (!updateForm) {
		updateForm = new Ext.FormPanel({
			// labelWidth : 75,
			url : '../dispatchIndex.do?action=warehouse&type=chengpin&isNew=true',
			labelAlign : 'left',
			buttonAlign : 'right',
			bodyStyle : 'padding:5px 5px 0',
			width : 400,
			frame : true,// 设置了面板的边角是圆弧过度的，底色
			labelWidth : 60,
			autoHeight : true,
			items : [{
						layout : 'column',// 在formpanel的itmes加入一个column的定义
						border : false,
						labelSeparator : ':',
						items : [{
									columnWidth : .580,
									layout : 'form',
									border : false,
									items : [{
												xtype : 'textfield',
												fieldLabel : '牌号',// 一开始漏了个主id,导致update不成功
												name : 'ssign',
												// readOnly : true,
												allowBlank : false,
												anchor : '90%'
											}]
								}, {
									columnWidth : .580,
									layout : 'form',
									border : false,
									items : [{
												xtype : 'textfield',
												fieldLabel : '规格',// 一开始漏了个主id,导致update不成功
												name : 'spec',
												// readOnly : true,
												allowBlank : false,
												anchor : '90%'
											}]
								}, {
									columnWidth : .580,
									layout : 'form',
									border : false,
									items : [{
												xtype : 'textfield',
												fieldLabel : '镀层',// 一开始漏了个主id,导致update不成功
												name : 'plate',
												// readOnly : true,
												allowBlank : false,
												anchor : '90%'
											}]
								}]
					}]
		});
	}
	return updateForm;
}// 构造了一个更新的界面。
var indicator;
function initGrid() {
	Ext.QuickTips.init();

	var xg = Ext.grid;
	/**/
	if (!form)
		form = getUpdateForm();
	/* win */
	if (!win) {
		win = new Ext.Window({
			layout : 'column',
			width : 300,
			autoHeight : true, // 4601782
			closeAction : 'hide',
			plain : true,
			items : form,
			modal : false,// 如果这个属性不设，弹出窗口会增加20M内存使用。
			buttons : [{
				text : '查询',
				handler : function() {
					if (form.getForm().isValid()) {
						if (indicator == 1) {
							SPEC = form.find("name", "spec")[0].getValue();
							SSIGN = form.find("name", "ssign")[0].getValue();
							PLATE = form.find("name", "plate")[0].getValue();
							ds.removeAll();
						} else {
							similary.calcSim(SPEC, form.find("name",
											"spec")[0].getValue(), function(
											_ret) {
										var _t = new simRecord({
											ssign : form.find("name", "ssign")[0]
													.getValue(),
											spec : form.find("name", "spec")[0]
													.getValue(),
											plate : form.find("name", "plate")[0]
													.getValue(),
											sim : _ret
										});
										ds.add(_t);

									});

						}
						win.hide();

					} else {
						Ext.MessageBox.alert('提示', '请正确填写数据！');
					}
				}
			}, {
				text : '清空',
				handler : function() {
					form.getForm().reset();
				}
			}, {
				text : '关闭',
				handler : function() {
					form.getForm().reset();
					win.hide();
				}
			}]
		});
	}
	// ////////////////////////////////////////////////////////////////////////////////
	// Grid
	// //////////////////////////////////////////////////////////////////////////////////////
	var sm = new xg.CheckboxSelectionModel();
	grid = new xg.GridPanel({
				id : 'button-grid',
				autoScoll : true,
				ds : ds,
				cm : new xg.ColumnModel([sm, {
							header : "牌号",
							// width : 40,
							sortable : true,
							dataIndex : 'ssign'
						}, {
							header : "规格",
							// width : 50,
							sortable : true,
							dataIndex : 'spec'
						}, {
							header : "镀层",
							// width : 50,
							sortable : true,
							dataIndex : 'plate'
						}, {
							header : "相似度",
							// width : 50,
							sortable : true,
							dataIndex : 'sim'
						}]),
				sm : sm,
				stripeRows : true,

				viewConfig : {
					forceFit : true
				},

				// inline toolbars
				tbar : [{
							text : '被比较对象',
							tooltip : '设置被比较对象',
							iconCls : 'add',
							onClick : function() {
								indicator = 0;
								if (!SPEC) {
									Ext.Msg.alert("提示：", "请先设置主对象");
									return;
								}
								form = getUpdateForm();

								var items = new Ext.util.MixedCollection();
								items.add("form", form);
								// win.width = 355,
								win.items = items;
								// win.title = "报价单信息";
								win.show(this);
								
								
								form.getForm().reset();

							}
						}, {
							text : '设置主比较对象',
							tooltip : '设置主比较对象',
							iconCls : 'add',
							onClick : function() {
								indicator = 1;
								form = getUpdateForm();

								var items = new Ext.util.MixedCollection();
								items.add("form", form);
								// win.width = 355,
								win.items = items;
								// win.title = "报价单信息";
								win.show(this);
								form.getForm().reset();
								var _t = new simRecord({
											ssign : SSIGN,
											spec : SPEC,
											plate :PLATE,
											sim : 0
										});
								form.getForm().loadRecord(_t);

							}
						}],

				bbar : new Ext.PagingToolbar({
							pageSize : 10,
							store : ds,
							displayInfo : true,
							displayMsg : '显示第 {0} 条到 {1} 条记录，一共 {2} 条',
							emptyMsg : "没有记录"
						}),
				width : 700,
				autoHeight : true,
				// frame:true,
				title : '相似度比较结果列表',
				iconCls : 'icon-grid',
				renderTo : 'main'
			});
};
